package com.central.common.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.List;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 用户实体
 * @author ly
 * @email 664162337@qq.com
 * @date 2020/9/25 14:42
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sys_user")
public class SysUser extends SuperEntity {

    private static final long serialVersionUID = 4042680837170475974L;
    /**
     * 昵称
     */
    private String nickname;
    /**
     * 头像
     */
    private String headImgUrl;
    /**
     * 手机号
     */
    private String mobile;
    /**
     * 性别：1：男，2：女，3：未知
     */
    private Integer sex;
    /**
     * 是否启用（注销）
     * true：默认生效
     * false：注销
     */
    private Boolean enabled;
    /**
     * backend用户
     * app用户
     */
    private String type;
    /**
     * 是否逻辑删除，加了 TableLogic 在执行 deleteByid的时候，会变成 update set isDel = xx ；
     * 而且在查询的时候此条数据会自动屏蔽，mybatis支持的；
     */
    @TableLogic
    private boolean isDel;

    /**
     * (exist = false) 标记数据展示的时候用到，非数据库字段
     */
    @TableField(exist = false)
    private List<SysRole> roles;
    @TableField(exist = false)
    private String roleId;
    @TableField(exist = false)
    private String oldPassword;
    @TableField(exist = false)
    private String newPassword;
}

